﻿

Public Class Nacimientos
    Inherits System.Web.UI.Page
    Shared Doctor As New Persona
    Dim HuellaBebe As String = ""

    Private Sub LimpioCampos()
        txtPulsera.Text = ""
        txtDNIMadre.Text = ""
        txtApellidos.Text = ""
        txtNombre.Text = ""
        rbtn_sexo_mujer.Checked = False
        rbtn_sexo_Hombre.Checked = False
        txtDNIPadre.Text = ""
        txtFEchaNac.Text = "__/__/201_"
        txtPeso.Text = ""
        cboMeses.Text = "----------Meses?---------"
        txtHuelabebe.Text = "No"

        HuellaBebe = ""

        lblConformeMedico.Text = "NO"
        lblEspecialidad.Visible = False
        cboEspecialidad.Visible = False

        lblMsjeGuardar.Visible = False


    End Sub


    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim ImagFondo As Image = Page.Master.FindControl("ImagFondoCabecera")

        If Not Page.IsPostBack Then
            FG.culturaPaginas()

            'Cargo páginas anterior y actual!!!
            Var_Globales.Setea_paginas("Nacimientos.aspx")

            'acomodo la imagen de fondo
            ImagFondo.Height = 400



            '-------------cargo las hora y minutos en el cmbo--
            FG.completaCombo_CnHOrasYMInutos_cada5Min(cboHOra)
            cboHOra.Items.Add("-")
            cboHOra.Text = "-"
            '--------------------------

            ' --genero el dni = a pulcera
            txtPulsera.Text = FG.Genera_Dni_Provisorio



        End If



    End Sub



    Protected Sub btnHuella2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnHuella2.Click

        btnok_Bebe.Visible = True
        btnConforMEdico.Visible = False



        mdp_Huella.Show()

    End Sub

    Private Function Guarda_nacimiento() As Boolean
        Dim param(13) As ADODB.Parameter


        param(0) = New ADODB.Parameter
        param(0).Name = "@dni_provisorio"
        param(0).Type = ADODB.DataTypeEnum.adVarChar
        param(0).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(0).Size = 10
        param(0).Value = txtPulsera.Text

        param(1) = New ADODB.Parameter
        param(1).Name = "@dni_Madre"
        param(1).Type = ADODB.DataTypeEnum.adVarChar
        param(1).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(1).Size = 10
        param(1).Value = txtDNIMadre.Text

        param(2) = New ADODB.Parameter
        param(2).Name = "@Apellido"
        param(2).Type = ADODB.DataTypeEnum.adVarChar
        param(2).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(2).Size = 50
        param(2).Value = txtApellidos.Text

        param(3) = New ADODB.Parameter
        param(3).Name = "@nombre"
        param(3).Type = ADODB.DataTypeEnum.adVarChar
        param(3).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(3).Size = 50
        param(3).Value = txtNombre.Text

        param(4) = New ADODB.Parameter
        param(4).Name = "@Dni_padre"
        param(4).Type = ADODB.DataTypeEnum.adVarChar
        param(4).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(4).Size = 10
        param(4).Value = txtDNIPadre.Text


        param(5) = New ADODB.Parameter
        param(5).Name = "@fehaYhoraNaciomiento"
        param(5).Type = ADODB.DataTypeEnum.adVarChar
        param(5).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(5).Size = 20
        param(5).Value = txtFEchaNac.Text & " " & cboHOra.Text

        param(6) = New ADODB.Parameter
        param(6).Name = "@nacioVivo?"
        param(6).Type = ADODB.DataTypeEnum.adBoolean
        param(6).Direction = ADODB.ParameterDirectionEnum.adParamInput
        'param(6).Size = 10
        param(6).Value = IIf(rbtn_Naciovivo_SI.Checked = True, True, False)

        param(7) = New ADODB.Parameter
        param(7).Name = "@Peso"
        param(7).Type = ADODB.DataTypeEnum.adVarChar
        param(7).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(7).Size = 10
        param(7).Value = txtPeso.Text

        param(8) = New ADODB.Parameter
        param(8).Name = "@meses"
        param(8).Type = ADODB.DataTypeEnum.adInteger
        param(8).Direction = ADODB.ParameterDirectionEnum.adParamInput
        'param(1).Size = 10
        param(8).Value = cboMeses.SelectedValue

        param(9) = New ADODB.Parameter
        param(9).Name = "@huyea"
        param(9).Type = ADODB.DataTypeEnum.adVarChar
        param(9).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(9).Size = 3000
        param(9).Value = IIf(HuellaBebe = "", "-", HuellaBebe)

        param(10) = New ADODB.Parameter
        param(10).Name = "@dniDoctor"
        param(10).Type = ADODB.DataTypeEnum.adVarChar
        param(10).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(10).Size = 10
        param(10).Value = Doctor.Dev_Dni

        param(11) = New ADODB.Parameter
        param(11).Name = "@id_institucion"
        param(11).Type = ADODB.DataTypeEnum.adInteger
        param(11).Direction = ADODB.ParameterDirectionEnum.adParamInput
        ' param(11).Size = 10
        param(11).Value = Doctor.Dev_ID_Institucion

        param(12) = New ADODB.Parameter
        param(12).Name = "@especialidad"
        param(12).Type = ADODB.DataTypeEnum.adVarChar
        param(12).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(12).Size = 50
        param(12).Value = cboEspecialidad.Text

        param(13) = New ADODB.Parameter
        param(13).Name = "@Sexo"
        param(13).Type = ADODB.DataTypeEnum.adVarChar
        param(13).Direction = ADODB.ParameterDirectionEnum.adParamInput
        param(13).Size = 1
        param(13).Value = IIf(rbtn_sexo_Hombre.Checked = True, "M", "F")


        Guarda_nacimiento = Datos.Agregar("Carga_nacimiento", param, "Guarda_nacimiento- Nacimineto")


    End Function


    Protected Sub Btn_guardar_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Btn_guardar.Click
        Dim Aux_persona As New Persona
        Dim Axu_DniProvisorio As String

        'seteo el cartel
        FG.SacaCartelDeAViso(lblMsjeGuardar)


        'remplazo en el valor de peso las posibles entrada de comas x puntos
        'x q la base acepta punto en lugar de comas para valor float
        'remplazo el valor de coma x punto 
        txtPeso.Text = Replace(txtPeso.Text, ",", ".")
        '-------------------------------------


        'valido datos 
        If txtApellidos.Text = "" Then
            FG.MuestraCartel("Falta Especificar el apellido", lblMsjeGuardar)
            Exit Sub
        End If

        If txtNombre.Text = "" Then
            FG.MuestraCartel("Falta Especificar el Nombre", lblMsjeGuardar)
            Exit Sub
        End If

        '-valido q el dni de la madre este y que exista
        If txtDNIMadre.Text = "" Then
            FG.MuestraCartel("El dni de la madre es obligatorio", lblMsjeGuardar)
            Exit Sub
        Else
            Aux_persona.SetaDatosXDn(txtDNIMadre.Text)

            If Aux_persona.Dev_ExistePersona = False Then
                FG.MuestraCartel("El dni de la madre no existe", lblMsjeGuardar)
                Exit Sub
            End If
        End If

        'valido el dni del padre ,, si es q lo completaron

        If txtDNIPadre.Text <> "" Then
            Aux_persona.SetaDatosXDn(txtDNIPadre.Text)
            If Aux_persona.Dev_ExistePersona = False Then
                FG.MuestraCartel("El dni del padre no existe", lblMsjeGuardar)
                Exit Sub
            End If
        End If


        If IsDate(txtFEchaNac.Text) = False Then
            FG.MuestraCartel("El formato de la facha de naciomiento no es valido", lblMsjeGuardar)
            Exit Sub
        Else
            If CDate(txtFEchaNac.Text) > Now.Date Then
                FG.MuestraCartel("La fecha de nac. no puede ser superior a la actual", lblMsjeGuardar)
                Exit Sub
            End If

        End If

        If rbtn_sexo_mujer.Checked = False And rbtn_sexo_Hombre.Checked = False Then
            FG.MuestraCartel("Falta seleccionar el sexo", lblMsjeGuardar)
            Exit Sub
        End If

        If cboHOra.Text = "-" Then
            FG.MuestraCartel("Falta seleccionar la hora de nacimiento", lblMsjeGuardar)
            Exit Sub
        End If

        If UCase(cboMeses.Text) = UCase("----------Meses?---------") Then
            FG.MuestraCartel("Falta seleccionar los meses de gestacion", lblMsjeGuardar)
            Exit Sub
        End If

        If txtPeso.Text = "" Then
            FG.MuestraCartel("Falta el peso", lblMsjeGuardar)
            Exit Sub
        Else



            If FG.ValCampoNumericosCONcoma(txtPeso.Text) = False Then
                FG.MuestraCartel("fomato o valor invalido en el campo peso", lblMsjeGuardar)
                Exit Sub
            End If
        End If

        If InStr(UCase(lblConformeMedico.Text), "OK", CompareMethod.Text) = 0 Then
            FG.MuestraCartel("Falta conforme medico", lblMsjeGuardar)
            Exit Sub
        End If

        If cboEspecialidad.Text = "-" Then
            FG.MuestraCartel("Falta Seleccionar la especialidad del medico", lblMsjeGuardar)
            Exit Sub
        End If


        If Guarda_nacimiento() = True Then

            Axu_DniProvisorio = txtPulsera.Text

            LimpioCampos()

            FG.MuestraCartel("Se cargo correctamente el registro, para acceder a la historia clinica web ( usuario: " & Axu_DniProvisorio & " - pass.: " & Axu_DniProvisorio & " )", lblMsjeGuardar)

        Else
            FG.MuestraCartel("Se Produjo un erro al cargar", lblMsjeGuardar)
        End If

    End Sub

    Protected Sub txtDNIMadre_TextChanged(ByVal sender As Object, ByVal e As EventArgs) Handles txtDNIMadre.TextChanged
        Dim PerMama As New Persona



        If txtDNIMadre.Text <> "" And txtApellidos.Text = "" Then
            PerMama.SetaDatosXDn(txtDNIMadre.Text)
            If PerMama.Dev_ExistePersona = True Then

                txtApellidos.Text = PerMama.Dev_apellido



            End If

        End If

    End Sub

    Protected Sub btnConfMedico_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnConfMedico.Click
        btnok_Bebe.Visible = False
        btnConforMEdico.Visible = True

        mdp_Huella.Show()

    End Sub

    Protected Sub btnConforMEdico_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnConforMEdico.Click
        Dim Aux_dni As String


        Aux_dni = Lector.IdentificaPersonas_DevuelveDNI


        'Aux_dni = TextBox1.Text



        If Aux_dni = "" Then
            lblConformeMedico.Text = "NO"
            mdp_Huella.Hide()

            Exit Sub
        End If


        Doctor.SetaDatosXDn(Aux_dni)

        If Doctor.Dev_ExistePersona = False Then
            lblConformeMedico.Text = "No se encontro la persona"
            mdp_Huella.Hide()
            Exit Sub
        End If

        If Doctor.Dev_EsMedico = False Then
            lblConformeMedico.Text = "No es medico"
            mdp_Huella.Hide()
            Exit Sub
        End If

        lblConformeMedico.Text = Doctor.Dev_ApellidoYnombre & "-Conf.:OK."

        lblEspecialidad.Visible = True
        cboEspecialidad.Visible = True


        Doctor.CargaCombo_Cn_Especialidades(cboEspecialidad)
        cboEspecialidad.Items.Add("-")
        cboEspecialidad.Text = "-"

        mdp_Huella.Hide()
    End Sub

    Protected Sub btnok_Bebe_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnok_Bebe.Click

        HuellaBebe = Lector.Dev_cod_de_hulla

        If HuellaBebe <> "" Then
            txtHuelabebe.Text = "Si"

        End If

        mdp_Huella.Hide()


    End Sub


    Protected Sub btnNuevo_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnNuevo.Click
        LimpioCampos()
        ' --genero el dni = a pulcera
        txtPulsera.Text = FG.Genera_Dni_Provisorio
    End Sub
End Class